package neuralNetworks.tool;

import java.util.ArrayList;
import java.util.List;

import neuralNetworks.NeuralNetwork;
import neuralNetworks.Neuron;

public abstract class MultiNetLoader<T extends NeuralNetwork<? extends Neuron>> {

	public List<T> nets = new ArrayList<>();

	public NNetSaver<T> netsaver = new NNetSaver<T>();

	public abstract void saveAll(String path);

	public abstract void loadAll(String path);

	public String getStructStr(T nn) {
		String struct = nn.getClass().getSimpleName();
		for (int l = 0; l < nn.layer.size(); l++) {
			struct += nn.layer.get(l).neurons.size() + "-";
		}
		struct += "af" + nn.actFunc;
		return struct;
	}

}
